Efficient Unification of Quantified Terms
نویسندگان
چکیده
D Conventional logic-programming languages rely fundamentally on symbolic computation with quantifier-free terms. Much theoretical logic uses the richer vocabulary of quantified terms, however. In this paper we sketch some first steps in a program of research for developing data structures and algorithms to support efficient computation directly on quantified terms. We describe a simple concept of quantified term, and efficient unification algorithms for both structure-sharing and non-structure-sharing representations of those terms. The efficiency of the approach results from the techniques used to represent terms, which enable naive substitution to implement correct substitution for quantified terms. The non-structuresharing unification algorithm described here has been prototyped by modification of a conventional logic-programming interpreter. a
منابع مشابه
Datalog Relaunched: Simulation Unification and Value Invention
For reasoning on the Web, Datalog is lacking data extraction and value invention. This article proposes to overcome these limitations with “simulation unification” and “RDFLog”. Simulation unification is a non-standard unification inspired from regular path queries. Like standard unification, it yields bindings for variables in both terms to unify. Unlike standard unification, it does not try t...
متن کاملUnification Under a Mixed Prefix
Unification problems are identified with conjunctions of equations between simply typed λ-terms where free variables in the equations can be universally or existentially quantified. Two schemes for simplifying quantifier alternation, called Skolemization and raising (a dual of Skolemization), are presented. In this setting where variables of functional type can be quantified and not all types c...
متن کاملMemory-Efficient and Thread-Safe Quasi-Destructive Graph Unification
In terms of both speed and memory consumption, graph unification remains the most expensive component of unification-based grammar parsing. We present a technique to reduce the memory usage of unification algorithms considerably, without increasing execution times. Also, the proposed algorithm is thread-safe, providing an efficient algorithm for parallel processing as well.
متن کاملProgress Report: Term Dags Using Stobjs
We explore in this paper the use of efficient data structures to implement operations on first-order terms, that can be formally verified. Specifically, we present the status of our work on defining and verifying a unification algorithm acting on terms represented as directed acyclic graphs (dags). This implementation is done using single threaded objects (stobjs) to store a dag representing th...
متن کاملAnti-unification Algorithms and Their Applications in Program Analysis
A term t is called a template of terms t1 and t2 iff t1 = tη1 and t2 = tη2, for some substitutions η1 and η2. A template t of t1 and t2 is called the most specific iff for any template t′ of t1 and t2 there exists a substitution ξ such that t = t ′ξ. The anti-unification problem is that of computing the most specific template of two given terms. This problem is dual to the well-known unificatio...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- J. Log. Program.
دوره 5 شماره
صفحات -
تاریخ انتشار 1988